isalpha関数は、引数に与えられた文字が英文字かどうかを判定します。
#include <ctype.h>
int isalpha(int c);
cは、チェックしたい文字を指定します。EOF(-1)も判定する可能性があるため、int型になっています。
戻り値として、引数の値が半角英字のASCIIコードであれば0以外を、そうでなければ0を返します。
すでに紹介しているisalnum()の英字のみを判定するのバージョンになります。
プログラム 例
#include <stdio.h> #include <ctype.h> #define STR_LEN (10) int main(void) { int loop_cnt; char str[STR_LEN + 1] = {0}; char in_data; scanf('%10s', &str); loop_cnt = 0; while (str[loop_cnt] != ' ') { /* 値が英字だったら0以外が返る */ if (isalpha(str[loop_cnt]) != 0) { break; } loop_cnt++; } if (loop_cnt < STR_LEN) { printf('英字が含まれています\n'); } else { printf('英字は含まれていません\n'); } return 0; }
Copyright © 2011 katsumi Handa All Rights Reserved.